package jnpf.zc.controller;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import jnpf.base.ActionResult;
import jnpf.fico.model.invoice.ZcglCwInvoicePagination;
import jnpf.report.vo.*;
import jnpf.zc.service.ReportService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.io.IOException;

/**
 * @description: 报表管理API
 * @author: zhengxiong.jiang
 * @createDate: 2025-09-08
 * @version: 1.0
 */
@Slf4j
@RestController
@Api(tags = "报表管理", value = "example")
@RequestMapping("/api/example/report")
public class ReportController {

    @Autowired
    private ReportService reportService;

    @ApiOperation("渝北区区属国有公司经营性国有土地管理台账报表")
    @PostMapping("/getGyjyListPage")
    public ActionResult getGyjyListPage(@RequestBody ReportGyjyVO reportGyjyVO)  {
        return ActionResult.success(reportService.getGyjyListPage(reportGyjyVO));
    }

    @ApiOperation("渝北区区属国有公司经营性国有土地管理台账")
    @PostMapping("/getZcglCzReportVO")
    public ActionResult getZcglCzReportVO(@RequestBody ZcglCzReportVO reportGyjyVO)  {
        return ActionResult.success(reportService.getZcglCzReportVO(reportGyjyVO));
    }

    @ApiOperation("渝北区区属国有公司国有资产闲置明细报表")
    @PostMapping("/getGyzcXzistPage")
    public ActionResult getGyzcXzistPage(@RequestBody ReportGyzcXzVO reportGyzcXzVO)  {
        return ActionResult.success(reportService.getGyzcXzListPage(reportGyzcXzVO));
    }

    @ApiOperation("渝北区区属国有公司国有资产管理台账（有权属类）报表")
        @PostMapping("/getGyzcYqsListPage")
    public ActionResult getGyzcListPage(@RequestBody ReportGyzcVO reportGyzcVO)  {
        return ActionResult.success(reportService.getGyzcListPage(reportGyzcVO));
    }

    @ApiOperation("渝北区区属国有公司国有资产管理台账（无权属类）报表")
    @PostMapping("/getGyzcWqsListPage")
    public ActionResult getGyzcWqsListPage(@RequestBody ReportGyzcWqsVO reportGyzcWqsVO)  {
        return ActionResult.success(reportService.getGyzcWqsListPage(reportGyzcWqsVO));
    }

    @ApiOperation("渝北区区属国有公司国有资产出租明细表")
    @PostMapping("/getGyzcCzListPage")
    public ActionResult getGyzcCzListPage(@RequestBody ReportGyzcCzVO reportGyzcCzVO)  {
        return ActionResult.success(reportService.getGyzcCzListPage(reportGyzcCzVO));
    }

    @ApiOperation("渝北区区属国有公司国有资产管理台账（无权属类）报表更改")
    @PostMapping("/updateGyzcWqs")
    public ActionResult updateGyzcWqs(@RequestBody ReportGyzcWqsVO reportGyzcWqsVO)  {
        System.out.println(reportGyzcWqsVO.getFId()+"维生素");
        return reportService.updateGyzcWqs(reportGyzcWqsVO);
    }

    @ApiOperation("渝北区区属国有公司国有资产闲置明细报表更改")
    @PostMapping("/updateGyzcXz")
    public ActionResult updateGyzcXz(@RequestBody ReportGyzcXzVO reportGyzcXzVO)  {
        return reportService.updateGyzcXz(reportGyzcXzVO);
    }

}
